home *** CD-ROM | disk | FTP | other *** search
/ Chip 2003 December / CHIP_CD_2003-12.iso / macos / pack1 / files / maczip.sit / MacZip 1.06 final / do_cmd Example next >
Text File  |  1999-06-17  |  3KB  |  109 lines

  1.  
  2. -- Enter here your Commandline
  3. set CommandLine to "zip -rm archive *"
  4.  
  5. try
  6.     tell application "MacZip crypt (FAT)"
  7.         activate
  8.         with timeout of 90000 seconds
  9.             -- uncomment the following command to suppress warning 
  10.             -- boxes for switches -m and -df 
  11.             do_cmd "NoWarningBoxes"
  12.             do_cmd CommandLine
  13.         end timeout
  14.         quit
  15.     end tell
  16. on error number ErrorNumber
  17.     beep 1
  18.     activate
  19.     -- unfortunately there is a overlap of the errorcodes
  20.     -- so we need to distinguish between zip and unzip
  21.     if CommandLine starts with "zip" then ┬
  22.         ZipErrorHandler(CommandLine, ErrorNumber)
  23.     if CommandLine starts with "unzip" then ┬
  24.         UnzipErrorHandler(CommandLine, ErrorNumber)
  25. end try
  26.  
  27.  
  28.  
  29.  
  30. on ZipErrorHandler(ErrorMessage, ErrorNumber)
  31.     -- Error return values.  The values 0..4 and 12..18 follow the conventions
  32.     -- of PKZIP.   The values 4..10 are all assigned to "insufficient memory"
  33.     -- by PKZIP, so the codes 5..10 are used here for other purposes. 
  34.     try
  35.         set TempErrNum to ErrorNumber
  36.         if ErrorNumber = 80 then set TempErrNum to 19
  37.         item TempErrNum of {┬
  38.             " unknown ", ┬
  39.             " unexpected end of zip file ", ┬
  40.             " zip file structure error ", ┬
  41.             " out of memory ", ┬
  42.             " internal logic error ", ┬
  43.             " entry too large to split ", ┬
  44.             " invalid comment format ", ┬
  45.             " zip test (-T) failed or out of memory ", ┬
  46.             " user interrupt or termination ", ┬
  47.             " error using a temp file ", ┬
  48.             " read or seek error ", ┬
  49.             " nothing to do ", ┬
  50.             " missing or empty zip file ", ┬
  51.             " error writing to a file ", ┬
  52.             " couldn't open to write ", ┬
  53.             " bad command line ", ┬
  54.             " unknown ", ┬
  55.             " could not open a specified file to read ", ┬
  56.             " user hit [command] + [.] to terminate "}
  57.     on error
  58.         set result to "Unknown Error"
  59.     end try
  60.     display dialog ┬
  61.         "Command failed: " & return & "[" & ErrorMessage & ┬
  62.         "]" & return & "\"" & result & " \"" & return ┬
  63.         & "Result Code: " & ErrorNumber buttons {"Ooops"} default button 1 ┬
  64.         with icon stop
  65.     
  66. end ZipErrorHandler
  67.  
  68.  
  69.  
  70.  
  71. on UnzipErrorHandler(ErrorMessage, ErrorNumber)
  72.     try
  73.         set TempErrNum to ErrorNumber
  74.         if ErrorNumber = 50 then set TempErrNum to 12
  75.         if ErrorNumber = 51 then set TempErrNum to 13
  76.         if ErrorNumber = 80 then set TempErrNum to 14
  77.         if ErrorNumber = 81 then set TempErrNum to 15
  78.         if ErrorNumber = 82 then set TempErrNum to 16
  79.         
  80.         item TempErrNum of {┬
  81.             " warning error ", ┬
  82.             " error in zipfile ", ┬
  83.             " severe error in zipfile ", ┬
  84.             " insufficient memory (during initialization) ", ┬
  85.             " insufficient memory (password failure) ", ┬
  86.             " insufficient memory (file decompression) ", ┬
  87.             " insufficient memory (memory decompression) ", ┬
  88.             " insufficient memory (not yet used) ", ┬
  89.             " zipfile not found ", ┬
  90.             " bad or illegal parameters specified ", ┬
  91.             " no files found ", ┬
  92.             "  disk full ", ┬
  93.             "  unexpected EOF ", ┬
  94.             "  user hit [command] + [.] to terminate ", ┬
  95.             "  no files found: all unsup. compr/encrypt. ", ┬
  96.             "  no files found: all had bad password "}
  97.     on error
  98.         set result to "Unknown Error"
  99.     end try
  100.     display dialog ┬
  101.         "Command failed: " & return & "[" & ErrorMessage & ┬
  102.         "]" & return & "\"" & result & " \"" & return ┬
  103.         & "Result Code: " & ErrorNumber buttons {"Ooops"} default button 1 ┬
  104.         with icon stop
  105. end UnzipErrorHandler
  106.  
  107.  
  108.  
  109.